export const checkUsername = (rule: any, value: any, callback: any) => {
  console.log('rule:', rule,value)
  // if (/^\d{3,6}$/.test(value)) {
  if (/^[a-zA-Z0-9]{3,6}$/.test(value)) {
    callback()
  } else {
    callback(new Error('账号长度为3-6位'))
  }
}

/**
 * 支持中文字符，大小写字母，数字和特殊字符"_?'#()\.,&%@!-"
 */
export const checkName = (rule: any, value: any, callback: any) => {
  console.log('rule:', rule)
  // console.log('自定义校验器rule:', rule)
  // console.log('自定义校验器value:', value)
  if (!value) {
    return callback()
  }
  let reg = /^[\u4e00-\u9fa5_?'#()\\.,&%@!a-zA-Z0-9-]+$/
  if (!reg.test(value)) {
    callback(new Error('支持中文字符，大小写字母，数字和特殊字符"_?\'#()\\.,&%@!-"'))
  } else {
    callback()
  }
}
/**
 * 支持大小写字母，数字和特殊字符"_?'#()\.,&%@!-"
 */
export const checkCode = (rule: any, value: any, callback: any) => {
  console.log('rule:', rule)
  // console.log('自定义校验器rule:', rule)
  // console.log('自定义校验器value:', value)
  if (!value) {
    return callback()
  }
  let reg = /^[_?'#()\\.,&%@!a-zA-Z0-9-]+$/
  if (!reg.test(value)) {
    callback(new Error('支持大小写字母，数字和特殊字符"_?\'#()\\.,&%@!-"'))
  } else {
    callback()
  }
}
/**
 * 物模型-操作定义-支持大小写字母，数字和特殊字符$和_
 */
export const checkCodeSimple = (rule: any, value: any, callback: any) => {
  console.log('rule:', rule)
  // console.log('自定义校验器rule:', rule)
  // console.log('自定义校验器value:', value)
  if (!value) {
    return callback()
  }
  let reg = /^[_$a-zA-Z0-9]+$/
  if (!reg.test(value)) {
    callback(new Error('标识或编码只能包含数字、字母、下划线'))
  }
  if (!isNaN(Number(value))) {
    callback(new Error('标识或编码不能为纯数字'))
  }
  if (!isNaN(Number(value.charAt(0)))) {
    callback(new Error('标识或编码首位不能为数字'))
  } else {
    callback()
  }
}
/**
 * 只能包含中文字符、英文字符、数字、下划线和中横线，0~20个字符
 */
export const checkPlatformName = (rule: any, value: any, callback: any) => {
  console.log('rule:', rule)
  // console.log('自定义校验器rule:', rule)
  // console.log('自定义校验器value:', value)
  if (!value) {
    return callback()
  }
  let reg = /^[\u4E00-\u9FA5\w-]{0,20}$/
  if (!reg.test(value)) {
    callback(new Error('只能包含中文字符、英文字符、数字、下划线和中横线，0~20个字符'))
  } else {
    callback()
  }
}
